package com.fudan.backend.service;

import com.fudan.backend.exception.RetCode;
import com.fudan.backend.pojo.StoreOpenRequest;
import com.fudan.backend.pojo.StoreParticipateInActivityRequest;
import com.github.pagehelper.PageInfo;

public interface StoreParticipateInActivityRequestService {
    /**
     * 新增一条商店参加活动申请
     * @param storeParticipateInActivityRequest
     * @param userId
     * @return 返回对应状态码
     */
    RetCode addStoreParticipateInActivityRequest(StoreParticipateInActivityRequest storeParticipateInActivityRequest, String userId);

    /**
     * 通过Id获取storeParticipateInActivityRequest信息
     * @param storeParticipateInActivityRequestId
     * @return 根据storeParticipateInActivityRequestId返回对应的storeParticipateInActivityRequest, 如果找不到则返回错误信息
     */
    StoreParticipateInActivityRequest getStoreParticipateInActivityRequestById(String storeParticipateInActivityRequestId);

    /**
     * @param current  当前页码
     * @param pageSize 页面大小
     * @return 所有参加活动申请的页面信息
     */
    PageInfo<StoreParticipateInActivityRequest> getAllStoreParticipateInActivityRequest(int current, int pageSize);

    /**
     * @param current  当前页码
     * @param pageSize 页面大小
     * @param storeId 商店ID
     * @return 所有参加活动申请的页面信息
     */
    PageInfo<StoreParticipateInActivityRequest> getAllStoreParticipateInActivityRequestByStoreId(int current, int pageSize, String storeId);

    /**
     * 处理商店参加活动申请
     * @param storeParticipateInActivityRequest
     * @return 如果成功返回成功信息, 如果找不到则返回相应错误的错误信息
     */
    RetCode processStoreParticipateInActivityRequest(StoreParticipateInActivityRequest storeParticipateInActivityRequest);
}
